查看原文
其他

现代 Android 开发: 利用 Jetpack Compose 及更多精彩功能!

Android 谷歌开发者 2019-10-31

作者 / Stephanie Cuthbertson, 产品管理总监




现代 Android 开发的最新进展


也许是 Android 十分灵活的原因,所以经常会有开发者向我们咨询应用开发问题,希望 Android 团队提供一些推荐做法。开发者告诉我们,他们喜欢 Android 的开放,但同时又希望我们把开放的态度与官方建议的正确方法结合起来,并且在正确性的基础上同时确保它是最简单易行的。而就在前几天,我们的团队从刚刚落幕的 Android 开发者峰会带来了答案。

  • Android 开发者峰会

    https://developer.android.google.cn/dev-summit


我们给出的答案就是 “现代 Android 开发” (modern Android development)。这是一款专为快速、简易开发而打造的强大方法。扫除一切拖慢速度的障碍,这样您才能专心致志地打造一流体验。为了实现现代 Android 开发,我们投入了许多努力,比如说开发了 Android Studio 和 Jetpack。(现在,90% 以上的专业开发者是 Android Studio 用户。) Kotlin 和 Compose 则是我们近期才推出的两款重磅产品。


Kotlin 是一款简洁的现代开发语言 —— 开发者一直希望我们提供一款好用易上手的语言,而 Kotlin 现已被 Android 选为官方推荐语言。Compose 则是一款面向未来 10 年推出的现代声明式 UI 工具包。听上去可能有些不可思议,但是我们在挑选和设计这些工具时,确实一直想着如何增进开发者的 “愉悦感” ,我们希望开发者在使用这些工具的时候能够感到快乐: 因为使用感也是十分关键的一环。


此外,Kotlin 和 Compose 还具备了另一项十分重要的属性,它们都能与您的现有应用完美兼容,也就是说,您可以根据自己的时间表,逐步添加 Kotlin 代码和 Compose 视图。

  • 腾讯视频链接
    https://v.qq.com/x/page/b3014supqfz.html
  • Bilibili 视频链接
    https://www.bilibili.com/video/av73830783/


使用优秀的现代语言开启您的开发旅程: Kotlin

出色的语言支持是现代 Android 的起点。实际上,我们最近刚迈过了一个里程碑: 近 60% 的头部应用使用了 Koltin 进行开发。目前,我们正在与 JetBrains 接洽合作,从多个维度进一步强化了 Kotlin 性能,例如: 加快 Kotlin 编译速度、使用 KAPT 进行增量注释处理、缓解 IDE 代码输入时的延迟、增添 Lint 检查项目、D8 和 R8 中的脱糖处理等,此外,R8 新增的若干优化项还能够识别 Kotlin 相关的字节码模式。从今天开始,Kotlin 构建脚本可获取全面 IDE 支持。如果您想提升自己的开发技能,不妨前往优达学城,学习我们新上线的 Android 高阶课程: 使用 Kotlin 进行开发另外,我们还专门为 Kotlin 专家推出了一款新的 Android 开发者认证,感兴趣的小伙伴们可以在接下来的三个月内以优惠价格参加认证考试。我们也在一直改善 Kotlin、Java 编程语言和 C++ 这三款官方支持的顶层开发语言的性能,努力为您和您的团队打造更好的语言体验,例如: Java8 语言库脱糖功能、内置更新版 LLVM 的 NDK r2、GNU Make、默认启用 Fortify 等。

  • Android 高阶课程: 使用 Kotlin 进行开发

    https://www.udacity.com/course/advanced-android-with-kotlin--ud940

  • Android 开发者证书
    https://developers.google.cn/certification/associate-android-developer
  • NDK r2
    https://android-developers.googleblog.com/2019/10/introducing-ndk-r21-our-first-long-term.html


Jetpack: 使用更少的代码构建高质量的强大应用
Jetpack 主要用于解决日常工作中的真实开发问题。在 Play 应用商店排名前 10,000 位的应用中,Jetpack 的使用率达到了 84% 以上。我们也在一直改进 Jetpack 的性能,具体更新包括:
  • 基准库 (Benchmarking) 最早于 Google I/O 大会时首次亮相,现已迭代至发布候选版本。您可以使用基准库对应用性能进行基准化分析,与之前相比,基准分析的操作步骤更加简便,分析结果也更为可靠。
  • 视图绑定 (Viewbinding) 让您可以更轻松地通过代码访问视图。它具备很多优点,例如: 类型安全、对构建时间影响极小、无需使用 findViewById() 函数和注释处理器。
  • CameraX 大幅度简化了开发工作,让您可以更加专注于应用本身,而无需自己处理 Android 生态圈中不同设备间相机行为差异。目前,三星、小米、OPPO、摩托罗拉和 LG 已实现了统一的 CameraX 接口。我们在 Google I/O 大会上已经推出了预览版 CameraX,并将于 12 月发布第一个 Beta 版本。


Compose: 使用全新的 Android UI 开发工具包构建美观的原生应用 —— 预览版强势推出
Compose 能够帮助您轻松构建美观的原生应用。它采用声明式的 UI 构建方法,让您的代码更加直观与简洁。得益于 Kotlin 的启发,Compose 在兼容性方面也十分出色,它可以与现有的 UI 工具包无缝兼容,方便您按照自己的节奏在项目中使用 Compose。

  • 腾讯视频链接

    https://v.qq.com/x/page/n3014aq1xr7.html

  • Bilibili 视频链接

    https://www.bilibili.com/video/av73821119/


Jetpack Compose 开发者预览版已正式发布。如需体验,请下载最新的预览版 Android StudioCompose 的开发工作完全开源,您可前往 Android 开源计划 (AOSP) 查看具体代码。在这段时间内,我们陆续收到了许多建议与反馈,这为我们改进 API 提供了很大的帮助;因此,我们十分感谢在开发者调研和 Kotlinlang Slack 小组中向我们分享宝贵意见的朋友们。在发布开发者预览版之后,团队的工作重心将转移到 Beta 版的开发上,因此希望大家继续向我们提交反馈!我们预计会在明年推出第一个 Beta 版本的 Jetpack Compose,以供正式版应用使用。


  • Compose

    https://developer.android.google.cn/jetpack/compose

  • 最新的预览版 Android Studio

    https://developer.android.google.cn/studio/preview


欢迎使用 Android Studio 4.0 Canary 版本
Android Studio 4.0 的首个 Canary 版本也已正式发布。该版本内置 Compose UI 工具集,可为您带来性能强大、高度集成的工具支持体验。Android Studio 4.0 内含 Compose 实时预览,代码补全功能以及全套 Compose 样例应用。更有多项重要更新,等您前来探索,其中包括: 全新的动画编辑器 (Motion Editor)、Java 8 语言库脱糖功能、全面支持 KTS 文件以及 Kotlin 实时模板 (live template)。

Android App Bundles 及动态交付的测试改进

推出后仅仅 18 个月,已经有超过 27 万个 Android App Bundles 正式版应用发布,覆盖了 25% 的活跃安装。我们基于开发者反馈简化了 App Bundles 和动态交付的测试工作。通过内部应用分享 (Internal app sharing) 功能,您可以像分享测试 APK 一样轻松分享测试版本的 app bundle。现在,您可以授权任何一名团队成员发布测试版本应用,测试版本无需使用正式版签名密钥进行签名,无需设定版本号,而且可以是可调试版本。此外,我们还允许您从 Play 管理中心获取历史版本应用的下载链接 (App Bundles 和 APK 均可支持)。我们还推出了动态交付的离线测试功能,该功能包含了一个 fake split install manager,允许您在本地测试时复制 Play 商店正在安装的拆分文件。


  • Android App Bundles

    https://developer.android.google.cn/platform/technology/app-bundle

  • 内部应用分享

    https://support.google.com/googleplay/android-developer/answer/9303479

  • fake split install manager

    https://developer.android.google.cn/reference/com/google/android/play/core/splitinstall/testing/package-summary.html


以用户信任为中心的现代分发平台
Google Play 一直视用户信任与安全为重中之重。我们拥有严格的人工审核制度、不断完善的 Play Protect 保护机制、以及随着我们监测到的安全威胁而不断更新的政策要求。得益于这些努力,从 Play 商店安装的应用安全性远远高于其他分发渠道。我们在今年进一步加强了平台的监测能力,以更好地打击假冒身份、二次打包、恶意内容等滥用行为。然而,我们深知安全问题并非一朝一夕可以解决,网络威胁层出不穷,仍有许多工作亟待我们去完成。在您的帮助下,我们减少了对敏感数据的访问,并为儿童与家庭营造了更安全的 Play 平台环境。此外,我们还限制了应用对短信和通话记录的访问权限,以这类权限为核心功能的应用才被允许访问;新政策实施后,访问此类敏感数据的应用数量骤减了 98%。因为您的付出与努力,用户获得了更好的安全性保障,同时他们也清楚地感知到了这一点,当他们在下载应用时发现需要授予的权限更少了。

Android 开发者挑战赛!

我们在十多年前发起了第一届 Android 开发者挑战赛,时至今日,正值现代 Android 积极塑造下一代平台之际,我们顺势宣布 Android 开发者挑战赛强势回归,并推出首个挑战任务——让创新与机器学习惠及世界。Live Captions (实时字幕) 功能就是一个绝佳的例子,Live Captions 把媒体内容带进约 5 亿的听障人士的生活。我们希望通过机器学习赋能越来越多这样的创新,相信在您的协助下,我们可以让未来世界更早到来。请阅读《Android 开发者挑战: 与您一同利用设备内置机器学习让创新惠及世界》,进一步了解赛事细节。


  • Android 开发者挑战赛强势回归

    https://developer.android.google.cn/dev-challenge

  • Live Captions (实时字幕) 功能

    https://blog.google/products/android/live-caption/

  • 《Android 开发者挑战: 与您一同利用设备内置机器学习让创新惠及世界》

    https://android-developers.googleblog.com/2019/10/android-developer-challenge.html


现代 Android 之旅到此也稍稍告一个段落了,相信大家对 Android 将来在开发者体验上的方向也已经有所了解。最后,感谢各位参加前几日的 Android 开发者峰会,不论您是亲临峰会现场,还是收看网络直播,都希望您能收获满满,从来自 100 余位演讲者的 60 场技术分享中,全方位深度探索 Android 的精彩之处。谢谢!

 

请您继续关注 “谷歌开发者” 微信公众号近期推文以及 “Google中国” Bilibili 官方账号,我们将会持续更新今年 Android Dev Summit 分会场演讲的中文字幕视频,敬请关注!

  • 2019 Android 开发者峰会中文字幕系列视频 (不断更新中)

    https://space.bilibili.com/64169458/channel/detail?cid=91608
欢迎大家就本次峰会中的内容提出 Android 开发相关的问题,我们将在峰会内容放送完毕后邀请谷歌工程师们为大家做出解答。 点击屏末 | 阅读原文 | 提交您的问题

  想了解更多 Android 内容?


  • 在公众号首页发送关键词 “Android”,获取相关历史技术文章;

  • 还有更多疑惑?欢迎点击菜单 “联系我们” 反馈您在开发过程中遇到的问题。

推荐阅读




    您可能也对以下帖子感兴趣

    文章有问题?点此查看未经处理的缓存